package com.ningxia.water.service;

import com.ningxia.water.entity.TsApplicantPlan;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ningxia.water.vo.out.ApplicantAndWellsVo;
import com.ningxia.water.vo.out.ChartVo;
import com.ningxia.water.vo.out.PlanVolumeVo;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author hz
 * @since 2021-03-15
 */
public interface ITsApplicantPlanService extends IService<TsApplicantPlan> {

    /**
     * 获取年份指标
     * @param year
     * @return
     */
    ChartVo getAllVolume(String year);

    /**
     * 获取用户对应的多个机井
     * @return
     */
    List<ApplicantAndWellsVo> findAllWells();

    /**
     * 获取用户对应的报警机井
     * @return
     */
    List<ApplicantAndWellsVo> findAllWarnWells();

    /**
     * 获取当年第一批计划水量、第二批计划水量、总计划水量、许可水量、实际用水量
     * @param applicantName
     * @return
     */
    List<PlanVolumeVo> getPlanVolume(String applicantName);

    /**
     * 根据 用水户id和年份，获取对应的第一批计划水量、第二批计划水量、总计划水量
     * @param applicantId
     * @param planYear
     * @return
     */
    PlanVolumeVo getPlanVolumeByYear(Integer applicantId, String planYear);

}
